home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
B-Book Series
/
(k)b6.d64
/
sid.l
< prev
next >
Wrap
Text File
|
2007-02-28
|
1KB
|
52 lines
9000 FUNC SID
9010 RETURN 54272
9020 ENDFUNC SID
9030 //
9040 PROC ADSR(ATTACK,DECAY,SUSTAIN,RELEASE)
9050 POKE SID+5,ATTACK*16+DECAY
9060 POKE SID+6,SUSTAIN*16+RELEASE
9070 ENDPROC ADSR
9080 //
9090 PROC FILTER(FREQ,HP,BP,LP,RES) CLOSED
9100 POKE SID+21,FREQ MOD 8
9110 POKE SID+22,FREQ DIV 8
9120 POKE SID+23,RES*16+1
9130 NUM:=PEEK(1022) MOD 16
9140 NUM:+HP*64+BP*32+LP*16
9150 POKE SID+24,NUM
9160 POKE 1022,NUM
9170 ENDPROC FILTER
9180 //
9190 PROC PULSE(FREQ) CLOSED
9200 SID:=54272
9210 POKE SID+2,FREQ MOD 256
9220 POKE SID+3,FREQ DIV 256
9230 ENDPROC PULSE
9240 //
9250 PROC VOLUME(LEVEL) CLOSED
9260 NUM:=PEEK(1022) DIV 16
9270 NUM:+LEVEL
9280 POKE SID+24,NUM
9290 POKE 1022,NUM
9300 ENDPROC VOLUME
9310 //
9320 PROC WAVEFORM(TYPE$,RING,SYNC) CLOSED
9330 CASE TYPE$ OF
9340 WHEN "T"
9350 NUM:=16
9360 WHEN "S"
9370 NUM:=32
9380 WHEN "P"
9390 NUM:=64
9400 WHEN "N"
9410 NUM:=128
9420 OTHERWISE
9430 PRINT TYPE$," IS NOT A VALID WAVEFORM"
9440 CLOSE
9450 STOP
9460 ENDCASE
9470 NUM:+RING*4+SYNC*2
9480 POKE SID+4,NUM
9490 POKE 1023,NUM
9500 ENDPROC WAVEFORM